Concepts and Terminology

This topic introduces the key terms you must know before working with DRUID bots.

Artificial intelligence (AI)

Artificial intelligence (AI) is the intelligence demonstrated by machines. It includes concepts like natural language understanding (NLU) and machine learning.

Channel

A channel is the environment that hosts the chatbot and enables two-way conversation.

You can build and deploy DRUID bots across various channels. For employee-facing bots, consider deploying them on Intranet Web Pages, Microsoft Teams, or Slack. For customer-facing bots, you might deploy them on your public website, Facebook, WhatsApp, Skype, or custom Mobile Apps.

DRUID Bot

A DRUID bot is a virtual agent that handles conversations with your end-users. This natural language understanding program translates the end-user's text or audio into structured data that your apps and services can understand.

You design, build, and train DRUID bots to handle the types of conversations your system requires. End users interact with DRUID bots using voice or text to access information, complete tasks, or execute transactions.

Context

Similar to natural language context, the context controls the flow of a conversation. During a conversation flow, the bot saves information in its memory, which is cached in the form of entities and variables.

Flow

A Flow configures the dialog between the end-user and the DRUID chatbot. In the DRUID Platform, a Flow is equivalent to an Intent plus a Dialog.

A Flow uses a tree-like structure where you configure logical decisions to provide different paths based on context, actions, or user input.

Intent

An Intent represents the purpose of a user’s input (an utterance). An Intent categorizes the user’s goal for one conversation turn.

You define many Intents and bundle them together with Dialogs into Flows. You train a DRUID bot using training phrases, which are examples of what the user might input. When the end user writes or says something, the DRUID bot matches the user's expression to the best Intent.

For each Intent, you can define actions that trigger specific behaviors in your system. When the DRUID bot matches the Intent, it provides the action to your system.

Dialog

A Dialog defines the bot's responses to defined Intents. In the DRUID AI Platform, you configure the Dialog as part of the Flow.

Entities

Entities are variables that complement or modify the Intent. An Entity is a snippet of information the chatbot can understand to serve the correct answer.

Entities are typed memory slots that keep the conversation context. In the DRUID AI Platform, entities are structured objects with attributes (or fields) and relations between them. The collection of entities within the bot creates the Bot Informational Model.

Example: The Account entity represents a person or organization that buys goods or services. It includes fields like Name, First Name, Last Name, Email, Orders (collection of Orders), Invoices (collection of Invoices), and Payments (collection of Payments).

Utterance

An Utterance is whatever the user says or inputs. The DRUID bot extracts the Intent and Entities essential to carrying on a conversation from the Utterance.

Druid local variable

Druid local variables are defined in Flows and persist throughout the conversation during the Flow execution.

Integration context variable

Integration context variables persist during the connector task execution and are used for custom authentication. DRUID keeps them in memory until using them in the authorization call to the business API.

Machine learning (ML)

Machine learning (ML) is the field of AI that focuses on making machines learn. In the context of chatbots, ML improves the bot's ability to answer complex user queries over time.

Natural language processing (NLP)

Natural language processing (NLP) is a field of AI that encompasses everything related to a machine understanding human input. To do this, an NLP engine uses tools such as natural language understanding, sentiment analysis, and tokenization.

Natural language understanding (NLU)

Natural language understanding (NLU) is the process that examines an utterance and extracts its entities and intent. It allows a machine to understand what a user is saying.